/**
*┌──────────────────────────────────────────────────────────────┐
*│　描    述：User_code                                                    
*│　作    者：NetCoreCMS                                            
*│　版    本：1.0    模板代码自动生成                                                
*│　创建时间：2019-12-25 10:52:46                             
*└──────────────────────────────────────────────────────────────┘
*┌──────────────────────────────────────────────────────────────┐
*│　命名空间： NetCoreCMS.Services                                  
*│　类    名： User_codeService                                    
*└──────────────────────────────────────────────────────────────┘
*/
using NetCoreCMS.IRepository;
using NetCoreCMS.IServices;
using NetCoreCMS.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace NetCoreCMS.Services
{
    public class User_codeService: IUser_codeService
    {
        private readonly IUser_codeRepository _repository;

        public User_codeService(IUser_codeRepository repository)
        {
            _repository = repository;
        }

        public int Add(User_code model)
        {
            return (int)_repository.Insert(model);
        }

        public bool Delete(string strWhere)
        {
            return _repository.DeleteList(strWhere) > 0;
        }

        public int GetCount(string strWhere)
        {
            return _repository.RecordCount(strWhere);
        }

        public User_code GetModel(string user_name, string code_type, string datepart)
        {
            return _repository.GetList(" where status=0 and datediff(" + datepart + ",eff_time,getdate())<=0 and user_name=@user_name and type=@type", new { user_name = user_name, type = code_type }).FirstOrDefault();
        }

        public User_code GetModel(string str_code)
        {
            return _repository.GetModel(str_code);
        }

        public bool Update(User_code model)
        {
            return _repository.Update(model) > 0;
        }
    }
}